#ifndef MAPPERNROM_H
#define MAPPERNROM_H
#include "Mapper.h"

PNE_NAMESPACE_BEGIN

struct MapperNROM : public Mapper
{
public:
    MapperNROM(Cartridge &cart);
    void WritePRG(Address addr, Byte value) override;
    Byte ReadPRG(Address addr) override;
    Byte ReadCHR(Address addr) override;
    void WriteCHR(Address addr, Byte value) override;

private:
    bool m_oneBank;
    bool m_usesCharacterRAM;

    std::vector<Byte> m_characterRAM;
};

PNE_NAMESPACE_END

#endif // MAPPERNROM_H
       // DONE